package com.itheima.dao;

import com.itheima.domain.Order;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @author Zhang_Han
 * @version 1.0
 * @date 2020/10/8 20:56
 */
public interface OrderDao {

    //查询预约数据是否重复;
    public Order findByCondition(@Param("orderDate") Date orderDate, @Param("memberId") Integer memberId, @Param("setmealId") Integer setmealId);

    //添加
    public void add(Order order);

    //通过ID查询 用于预约成功后的数据回显;
    Map findById(Integer id);

    //查询套餐预约占比;
    List<Map> getSetmealReport();

    //今日预约数;
    Long getTodayOrderNumber();

    //今日到诊数;
    Long getTodayVisitsNumber();

    //本周预约数;
    Long getThisWeekOrderNumber();

    //本周到诊数;
    Long getThisWeekVisitsNumber();

    //本月预约数;
    Long getThisMonthOrderNumber();

    //本月到诊数;
    Long getThisMonthVisitsNumber();

    //热门套餐;
    List<Map> getSetmealList();
}

